package com.ruoyi.system.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.SysSourceConfigMapper;
import com.ruoyi.system.domain.SysSourceConfig;
import com.ruoyi.system.service.ISysSourceConfigService;

/**
 * 数据源配置Service业务层处理
 *
 * @author ruoyi
 * @date 2022-04-21
 */
@Service
public class SysSourceConfigServiceImpl implements ISysSourceConfigService
{
    @Autowired
    private SysSourceConfigMapper sysSourceConfigMapper;

    /**
     * 查询数据源配置
     *
     * @param sourceId 数据源配置ID
     * @return 数据源配置
     */
    @Override
    public SysSourceConfig selectSysSourceConfigById(Long sourceId)
    {
        return sysSourceConfigMapper.selectSysSourceConfigById(sourceId);
    }

    /**
     * 查询数据源配置列表
     *
     * @param sysSourceConfig 数据源配置
     * @return 数据源配置
     */
    @Override
    public List<SysSourceConfig> selectSysSourceConfigList(SysSourceConfig sysSourceConfig)
    {
        return sysSourceConfigMapper.selectSysSourceConfigList(sysSourceConfig);
    }

    /**
     * 新增数据源配置
     *
     * @param sysSourceConfig 数据源配置
     * @return 结果
     */
    @Override
    public int insertSysSourceConfig(SysSourceConfig sysSourceConfig)
    {
        return sysSourceConfigMapper.insertSysSourceConfig(sysSourceConfig);
    }


    /**
     * 修改数据源配置
     *
     * @param sysSourceConfig 数据源配置
     * @return 结果
     */
    @Override
    public int updateSysSourceConfig(SysSourceConfig sysSourceConfig)
    {
        return sysSourceConfigMapper.updateSysSourceConfig(sysSourceConfig);
    }

    /**
     * 批量删除数据源配置
     *
     * @param sourceIds 需要删除的数据源配置ID
     * @return 结果
     */
    @Override
    public int deleteSysSourceConfigByIds(Long[] sourceIds)
    {
        return sysSourceConfigMapper.deleteSysSourceConfigByIds(sourceIds);
    }

    /**
     * 删除数据源配置信息
     *
     * @param sourceId 数据源配置ID
     * @return 结果
     */
    @Override
    public int deleteSysSourceConfigById(Long sourceId)
    {
        return sysSourceConfigMapper.deleteSysSourceConfigById(sourceId);
    }


    /**
     * 保存 数据源配置
     * 存在更新,不存在插入
     * @param sysSourceConfig
     * @return int
     */
    @Override
    public int save(SysSourceConfig sysSourceConfig){

        int row=sysSourceConfigMapper.updateSysSourceConfig(sysSourceConfig);
        if(row==0){
            row= sysSourceConfigMapper.insertSysSourceConfig(sysSourceConfig);
        }
        return row;
    }



    /**
     * 忽视添加 数据源配置
     * IGNORE
     * @param sysSourceConfig
     * @return int
     */
    @Override
    public int saveIGNORE(SysSourceConfig sysSourceConfig){
                                        
        return sysSourceConfigMapper.saveIGNORE(sysSourceConfig);
    }


    /**
     * 批量保存 数据源配置
     * IGNORE
     * @param  list
     * @return int
     */
    @Override
    public int saveBatch(List<SysSourceConfig> list){
        return sysSourceConfigMapper.saveBatch(list);
    }
}
